home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1995 October / EnigmA AMIGA RUN 01 (1995)(G.R. Edizioni)(IT)[!][issue 1995-10][Aminet 7].iso / Aminet / misc / math / gpamiga_1_38_3.lha / README.amiga < prev    next >
Text File  |  1993-12-18  |  6KB  |  163 lines

  1. About PARI             (14 dec 1993)
  2. ----------
  3.  
  4. PARI is the name of a sophisticated and free math package. GP is a
  5. calculator that offers all the features of PARI and some more. PARI
  6. uses *infinite* precision rational numbers and *arbitrary* precision
  7. floating point numbers. 
  8.  
  9. You can use complex numbers, vectors, matrices, polynomials, rational
  10. functions and taylor expansions. PARI also handles integers mod n,
  11. finite fields, algebraic numbers and p-adic numbers. PARI includes
  12. standard numerical methods and the GP calculator also includes
  13. hi-resolution plotting.
  14.  
  15. PARI is written by four professional number theorists, C. Batut, 
  16. D. Bernardi, H. Cohen and M. Olivier. The latter two are Professors of
  17. Mathematics.
  18.  
  19. -------
  20.  
  21. This amiga distribution contains the GP calculator compiled for
  22. different processors, an emacs mode for running GP, partial
  23. documentation, and all the amiga specific files I used to compile GP.
  24. The amiga hi-resolution plotting functions are written by Jerry
  25. Tunnell, who kindly let me use and distribute them.
  26.  
  27. If you want full source and documentation, you will have to get the
  28. source distribution. It *should* be available where you found this
  29. package, as file pari-1.38.3.gz or something similar (*Please* keep
  30. this archive and the source archive together. If you like GP, you will
  31. probably want the documentation too). If you can't find the source
  32. anywhere else, you can try to ftp to megrez.ceremab.u-bordeaux.fr,
  33. directory pub/pari/unix. This is the main PARI site.
  34.  
  35.  
  36. Files
  37. -----
  38.   
  39. amiga/             Amiga specific files and sources.
  40.     makefile.68000     Makefiles for different amiga versions.
  41.     makefile.68020 
  42.     makefile.68881
  43.     mpAmiga.s     Assembler file (gcc syntax) for the 68020 versions.
  44.              Converted from mp.s with the convert68k.el program in
  45.              the elisp directory.    
  46.     plotAmiga.c     Hi-resolution plotting functions, written by J.B. Tunnell.
  47.     version68k.diff  Source diffs to add an Amiga version string.
  48.     versionport.diff
  49.  
  50. bin/
  51.     gp.68000     GP binaries for different processors.
  52.     gp.68020
  53.     gp.68881
  54.  
  55. doc/             This directory does not contain the complete documentation,
  56.     usersch3.tex     only one file that is needed by pari.el
  57.  
  58. elisp/
  59.     convert68k.el     Elisp program to convert a sun3 style 68k assembler file
  60.              (read mp.s) into something that amiga gcc can understand.
  61.     pari.el         An Emacs mode for the GP calculator. Desribed below and
  62.     pari.elc     in the file pari.txt
  63.     pari.menu     Used by pari.el.
  64.     pari.txt     A description of pari-mode
  65.  
  66. examples/
  67.     EXPLAIN         Description of the examples.
  68.     Makefile     Note that you cannot compile the C example
  69.     Makesimple     without the libpari.a library.
  70.     bench.gp
  71.     clareg.gp
  72.     lucas.gp
  73.     mattrans.c
  74.       rho.gp
  75.     squfof.gp
  76.       tutnf.gp
  77.     tutnfout
  78.  
  79.  
  80. Starting PARI
  81. -------------
  82.  
  83. First, you need to install Markus Wild's ixemul.library, if you don't
  84. have it already. Version 39.45 is the most recent non-buggy version I
  85. know of (39.47 seems to be unreliable). This library is available on
  86. Aminet (for example at ftp.luth.se) and is included in the gcc
  87. distribution.
  88.  
  89. GP (file gp.68020 or whichever version you use) takes three command line
  90. options. The most important is '-s STACKSIZE'. This sets the initial
  91. size of the internal PARI stack (not to be confused with the task
  92. stack). The default value is 4 MB which may be more RAM than you have
  93. available. Try 'gp -s 1000000' or 'gp -s 100000' if GP refuses to
  94. start. The other two flags are '-p PRIMELIMIT' and '-b BUFFERSIZE'.
  95. Default values are 500000 and 30000 respectively.
  96.  
  97. Talking about the task stack, I don't know exactly how large it must
  98. be. I use a stack of 100000 bytes, and that seems to be enough. To set
  99. the task stack, use the command 'STACK 100000' command from the shell,
  100. not the -s option to GP.
  101.  
  102. At the pari command prompt (default '?'), \q or CTRL-\ exits GP. You
  103. can type '?' to get some on-line help. Note that running GP inside
  104. emacs gives you better online help.
  105.  
  106. The GP command interface is quite straight forward if you are used to
  107. MATLAB or similar systems. Note that with GP both vectors and matrices
  108. are typed with with square brackets '[' ']', with comma ',' separating
  109. elements on the same row and semicolon ';' separating rows. For
  110. example, a 2-2 matrix is typed '[1,2 ; 3,4]'.
  111.  
  112. The emacs mode.  
  113. --------------- 
  114. To use this on the amiga, you must make sure that you have mounted the
  115. FIFO: device, and that the SHELL environment variable is set to some
  116. unix-style shell. I use the shell distributed with gcc, a port of
  117. pdksh (file name gcc/bin/sh). The shell distributed with GNUemacs
  118. might work too, but I haven't tried it. The emacs mode is described in
  119. the file elisp/pari.txt. If you don't wan't to edit the pari.el file,
  120. you should assign PARI: to the directory where you have installed
  121. PARI.
  122.  
  123. Known bugs
  124. ----------
  125. GP does not respond to CTRL-C when run from the shell. However, if you
  126. send the CTRL-C signal from another shell window (with the BREAK
  127. command) or type CTRL-C in GP's emacs buffer, GP is interrupted.
  128.  
  129. A free() call occasionally failes when using the 68000 or 68020
  130. versions of GP. I have not had this problem with the 68881 version.
  131.  
  132. I'm tempted to blame both these problems on the ixemul.library, but
  133. I'm not sure what happens.  
  134.  
  135. For those who are curious about the differences between the three
  136. versions gp.68000, gp.68020 and gp.68881: 
  137.  
  138. * The first two are compiled with gcc -msoftfloat instead of gcc
  139. -m68881. If a 68881 processor is present, all three version makes use
  140. of it. The performance difference between the gp.68020 and the 68881
  141. version should be rather small on any machine that can run both. I
  142. included the 68881 because it seemes more reliable.
  143.  
  144. * In the 68020 and 68881 versions, some low level functions are
  145. written in 68020 assembler, while the 68000 version is written
  146. entirely in C and is compiled with gcc -m68000 to make sure that it
  147. contains only 68000 instructions.
  148.  
  149. ------- 
  150. Enjoy GP!
  151.  
  152. Feel free to send me comments and questions (and even bug reports).
  153.     Niels Möller
  154.     Ställdalsvägen 11
  155.     122 43 Enskede
  156.     SWEDEN
  157. email:    nisse@lysator.liu.se
  158.  
  159. For questions and bug reports not specific to the amiga version, you
  160. can also write to the authors:
  161.     pari@ceremab.u-bordeaux.fr
  162.  
  163.